Reading � MIT context aware

Greg Detre

Tuesday, November 05, 2002

Lieberman, Fry and Weitzman � Why surf? � Letizia and Powerscout

Letizia

Powerscout

I don�t like the fact that I have to specify which profile I�m currently interested in � that should be reasonably easy to guess

I don�t want help necessarily to begin with anyway

can I have two interests open at once???

Misc

is there no way of combining the two approaches???

are they simply intended as proof of concept or commercial applications???

Rhodes and Maes

don�t you have privacy issues using an email archive???

how does Margin Notes segment the webpages???

 

Potter

what�s PBD???

why are we reading this???

because, to at least a limited extent, JIT programming is a context-aware problem

and because it�s something we�d really like to be able to do � it requires considerable ingenuity on the part of the designer to make things easier for the user in an immediate way

do you really need Turing-completeness???

 

Misc

kohonen net to self-organise contexts

make the multimodal inputs as representative and various as possible

gsr, gui messages, typing, room temp, light levels, phone reception

has there been research into which (minimum) sensor-variables can pinpoint indoors vs outdoors etc.???

 

Discussion

PBE

programming by demonstration

e.g. Your Wish Is My Command

also Alan Cypher

 

potter - he did the most interesting programming by example demo with macpaint

same mechanism for filling a shape with a texture does a pixel-by-pixel find-and-replace

what's programming by example???

andrea - blah blah inter-application protocols

he does it on a bit-level

if you get the hook in at the right level, you can do something special

Apple � allows you to hook in to everything

 

PBD e.g. Word autoformats list

Brad Garner CHI 1985

 

make powerful tools by putting them in the right place in the system

Windows can let you know about file access

VB??? ActiveX???

 

Lieberman � Tinker (programming by example)

write a Pong program by showing it the special behaviours (e.g. the ball reacts this way when it bounces off a wall)

cf JIT

relation to CA � these are contexts, in this situation you do this/that

it becomes the problem of analogy-making

when it makes a big, cross-domain/level jump, then it runs the risk of doing something wrong/unexpected

constraint languages

Juno � sticky patterns in what you�re drawing, applies too many rules, too powerful a mechanism, quickly collapses into a mess as it chains too many rules unexpectedly

negative feedback/constraint � hasn�t been worked out properly

Andrea: people are good at giving examples of good behaviour, but bad at constraints

criticising PBE � not much literature, but would be very valuable

each new situation is a criticism of the rest of it, insofar as it tells you what you don�t do

you want to criticise the generalisation, rather than add a different one

 

applications for PBE:

powerful dreamy idea

show the edge effects and let the computer figure out the middle

prolog � if you can prove a program exists, you�ve written it

anything where you can specify things by examples

but don�t you have to be able to fully specify it???

domains:

graphics, graphic design (newspaper layout � Mondrian, Lieberman), text editing

Paradot � Brad Myers (CMU)

general language for doing PBE called Garnet

a really talented graduate student threw himself at PBE and got nowhere, so he gave up

what can�t it do:

e.g. a word processing package � could be expressed in terms of a few PBE rules

OR vs special case

maybe you just need enough examples � but how does it differentiate between exceptions and disjunct high-level rules

cf the context-switching problem???

Ted thinks that you won�t want to program things that you can�t think of examples

but wouldn�t you want to be able to tweak the rules in human-readable form???

surely the beauty of a good application is that it can have unintended uses

Ted: not unintended mechanisms though�

 

Lieberman invented flood fill, dynamic garbage collection

JIT information retrieval

you�re still bound by keyword matching�s deficiencies

why don�t people use them more???

trade-off between alexa and desktop real estate

too much information??? interface

attention � very private/important to us, and we don�t like having it shifted for us

I like working in parallel � they aren�t very good at that

Google vision

not to be a google interface, just a �I feel lucky� button

but that�s not what you necessarily want

but you lose the information � how many hits, examples etc.

very difficult to get feedback from the user, because the system has no way of knowing whether it�s picked the right thing � relevance vs usefulness

one of the attractions of programming over PBE � do I really trust myself to get the general case right, when I�m actually best at thinking in terms of specifics

the cyborg wearable guys

brad did some good work

it�s disturbing for someone to be typing while you�re talking to them

the cross-field-type inter-metric metric weighting is the interesting bit

he�s using profiles for different topics � but what if you want a fuzzy tangled sort of hierarchy of profiles/topics

Powerscout � requires you to explicitly specify your profile

you could have fun if it started to randomly mix contexts up for you and suggest slightly random things (like the Amazon collaborative filtering)

Tom Mitchell � scheduling package

it would do better at figuring out people�s whereabouts, right up until the end of semester, and then it�d go belly-up

if a system is going to make recommendations � should have a temperature control, so that its suggestions can be more fine-tuned or more noisy/surprising

how much do self-organisation/statistical techniques get used???

whenever you have a criticism/amendment/exception � it could be:

a new concept

a change in the old concept

a random event

a mistake

how do you know you�ve got a robust model? to make it more to fuzzy? which are dependable and which are undependable bits of knowledge?

I think the solution is transparency to the user

this kind of limits it to power-users

Napier kiosk:

rather than categorising by maps/sight-seeing/nightlife/restaurants etc.

rate by satisfaction:

time-orientated

proximity

ease of access/transport

user rating

make it look like it knows what it�s about � we�re good at asking the sort of person on the street who does know which bus to get

the information in these kiosks comes from the restaurants etc. which have paid to be listed on the kiosk � where should the information come from?

restaurant critics

restaurants

someone that pays for advertising

people on the street/people who go to restaurants

how can you make it work so that it improves itself over time?

perhaps you want to hear what people in your chosen/selective community think

self-organisation is the key

when two trusted people recommend the same thing, that really goes on the list

sometimes you want to canvas a few sources, then be a bit random in the final choice

really important: a high-rated trusted source

if the same person gives a single recommendation from two different perspectives, that almost counts as two recommendations

reputations

reputations add credibility because they have a vested interest in maintaining

also risk, everybody�s doing it

�we�re here� advertising � all you can do to sell toothpaste is to keep telling people that you�re here selling toothpaste

but that�s not enough if you�re focused elsewhere (e.g. banner ads)

I very rarely rate things online � do I trust 10m random people�s views on something???

 

shifting scale

you don�t want to give detailed map directions if someone�s asking about getting from London to Boston